var path = require("path");

module.exports = {
    entry: {
        //Launcher: path.join(__dirname, "ref/bundles/Launcher/app.js"),
        //Controller: path.join(__dirname, "ref/bundles/Controller/app.js"),
        //Layout: path.join(__dirname, "ref/bundles/Layout/app.js"),
        //Button: path.join(__dirname, "ref/bundles/Button/app.js"),
        //UserInfo: path.join(__dirname, "ref/bundles/UserInfo/app.js")
        Compare: path.join(__dirname, "ref/bundles/Compare/app.js"),
        CompareRemake: path.join(__dirname, "ref/bundles/CompareRemake/app.js"),
        AnswerFlowController: path.join(__dirname, "ref/bundles/AnswerFlowController/app.js"),
        ComponentLoader: path.join(__dirname, "ref/bundles/ComponentLoader/app.js"),
        InteractionSubmitButton: path.join(__dirname, "ref/bundles/InteractionSubmitButton/app.js"),
        ObjectiveInteractionLayout: path.join(__dirname, "ref/bundles/ObjectiveInteractionLayout/app.js"),
        InteractionTimer: path.join(__dirname, "ref/bundles/InteractionTimer/app.js"),
        TimerController: path.join(__dirname, "ref/bundles/TimerController/app.js")

    },
    output: {
        path: path.join(__dirname, "ref/bundles"),
        filename: "[name]/dist/[name].dist.js"
    },
    resolve: {
        extensions: [".js"]
    },
    module: {
        rules: [{
            test: /\.js$/,
            loader: 'babel-loader',
            exclude: /node_modules/
        }, {
            test: /\.html$/,
            use: ["raw-loader", "html-minify-loader"]
        }, {
            test: /\.css$/,
            use: [{
                loader: 'css-loader',
                options: {
                    minimize: true,
                    url: false
                }
            }]
        }]
    },
    externals: {
        'vue': 'Vue',
        'vue-class-component': 'VueClassComponent',
        'component-decorators': 'ComponentDefineDecorator'
    }
};